Error Management
When a non-fatal error occurs and motion must be stopped quickly, the following procedure can be taken:
For each axis:
Step |
Example Application Code |
---|---|
Send Stop Command for each axis |
MLAxisStop(PipeNetwork.AXI_A1_Axis, TRUE, DEF_A1_StopDec); |
Stop the Axis Motion Generator |
MLAxisMoveVel(PipeNetwork.AXI_A1_Axis, 0.0); |
Wait for Axis to be stopped |
AxisStatus := MLAxisStatus(PipeNetwork.AXI_A1_Axis); |
Turn power off(disable) all the axes |
MLAxisPower(PipeNetwork.AXI_A1_Axis,FALSE); |
Disconnect Pipe Network from the axis |
MLCNVDisconnect(PipeNetwork.CNV_A1); |
For the machine:
Step |
Example Application Code |
---|---|
Stop Command at the master block level |
MLMstRun(PipeNetwork.MASTER, 0.0); |
Wait for Master command to be stopped |
IF A1_AckState = DEF_StateErrorStop |
-
- This code is only applicable to PipeNetwork applications. It will not work in a PLCopenA vendor -and product- independent worldwide association active in Industrial Control and aiming at standardizing PLC file formats based on XML application.
This procedure for error management is based on the Project Structure Guidelines as described in Application Software Structure - Implementation
For information on restarting the motion, refer to Restarting Motion with PipeNetwork